f02fd2cd6c6a802720c20a4641011ad3f1ccfea2
[git-annex.git] /
1 [[!comment format=mdwn
2  username="joey"
3  subject="""comment 1"""
4  date="2022-09-16T17:10:24Z"
5  content="""
6 "file content has changed" is a message from the directory special remote
7 when it sees that a file in the directory has a different mtime,size,inode
8 tuple (content identifier) than the one that was recorded when importing
9 the tree.
10
11 Maybe that has something to do with the duplicate files, since they would
12 have different inodes. Except, it does try to support that; it can keep
13 track of multiple content identifiers for a key, and when there are
14 duplicate files, that works in my testing.
15
16 I notice that, if I have a directory special remote that was initially
17 set up with ignoreinodes=no, and I've imported a tree that way from it,
18 I can cause what looks like this problem:
19
20         joey@darkstar:~/tmp/bench/x>git-annex enableremote t directory=../x ignoreinodes=yes
21         enableremote t ok
22         (recording state in git...)
23         joey@darkstar:~/tmp/bench/x>git-annex get 3 --from t
24         get 3 (from t...) 
25           file content has changed
26
27 Which seems like a bug that it allows changing it, but I think that the idea was
28 that, after changing ignoreinores, the user would re-run git-annex import,
29 which would re-import all the files since the content identifier has
30 changed. Still, I think that 
31 [[!commit 3e2f1f73cbc5fc10475745b3c3133267bd1850a7]] didn't consider that
32 it could cause a get to fail.
33
34 I know you have recently upgraded from a version that defaulted
35 to ignoring inodes. Maybe you only need to re-run `git-annex import` from the
36 directory remote to fix the problem?
37 """]]